/**
 * 定义上下文对象
 */
export interface ContextItem {
  // 上下文唯一标识
  key: ContextKeyEnum;
  // 下文名称，如team_docs,file
  name: string;
  // 上下文的值，不同类型的上下文value的类型不一样
  value: ContextValueType;
}

export enum ContextKeyEnum {
  // 企业知识库上下文
  TEAM_DOCS = 'team_docs',
  // 库内RAG上下文
  WORKSPACE_RAG = 'workspace_rag',
  // 用户输入上下文
  USER_INPUT = 'user_input_text',
  // 用户圈选的代码上下文
  SELECTED_CODE = 'selected_code',
}

export type ContextValueType = string | number | string[];
